package org.secretflow.v1alpha1.kusciaapi;

import static io.grpc.MethodDescriptor.generateFullMethodName;

/**
 */
@javax.annotation.Generated(
    value = "by gRPC proto compiler (version 1.62.2)",
    comments = "Source: kuscia/proto/api/v1alpha1/kusciaapi/domaindatasource.proto")
@io.grpc.stub.annotations.GrpcGenerated
public final class DomainDataSourceServiceGrpc {

  private DomainDataSourceServiceGrpc() {}

  public static final java.lang.String SERVICE_NAME = "kuscia.proto.api.v1alpha1.kusciaapi.DomainDataSourceService";

  // Static method descriptors that strictly reflect the proto.
  private static volatile io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse> getCreateDomainDataSourceMethod;

  @io.grpc.stub.annotations.RpcMethod(
      fullMethodName = SERVICE_NAME + '/' + "CreateDomainDataSource",
      requestType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest.class,
      responseType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse.class,
      methodType = io.grpc.MethodDescriptor.MethodType.UNARY)
  public static io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse> getCreateDomainDataSourceMethod() {
    io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse> getCreateDomainDataSourceMethod;
    if ((getCreateDomainDataSourceMethod = DomainDataSourceServiceGrpc.getCreateDomainDataSourceMethod) == null) {
      synchronized (DomainDataSourceServiceGrpc.class) {
        if ((getCreateDomainDataSourceMethod = DomainDataSourceServiceGrpc.getCreateDomainDataSourceMethod) == null) {
          DomainDataSourceServiceGrpc.getCreateDomainDataSourceMethod = getCreateDomainDataSourceMethod =
              io.grpc.MethodDescriptor.<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse>newBuilder()
              .setType(io.grpc.MethodDescriptor.MethodType.UNARY)
              .setFullMethodName(generateFullMethodName(SERVICE_NAME, "CreateDomainDataSource"))
              .setSampledToLocalTracing(true)
              .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest.getDefaultInstance()))
              .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse.getDefaultInstance()))
              .setSchemaDescriptor(new DomainDataSourceServiceMethodDescriptorSupplier("CreateDomainDataSource"))
              .build();
        }
      }
    }
    return getCreateDomainDataSourceMethod;
  }

  private static volatile io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse> getQueryDomainDataSourceMethod;

  @io.grpc.stub.annotations.RpcMethod(
      fullMethodName = SERVICE_NAME + '/' + "QueryDomainDataSource",
      requestType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest.class,
      responseType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse.class,
      methodType = io.grpc.MethodDescriptor.MethodType.UNARY)
  public static io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse> getQueryDomainDataSourceMethod() {
    io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse> getQueryDomainDataSourceMethod;
    if ((getQueryDomainDataSourceMethod = DomainDataSourceServiceGrpc.getQueryDomainDataSourceMethod) == null) {
      synchronized (DomainDataSourceServiceGrpc.class) {
        if ((getQueryDomainDataSourceMethod = DomainDataSourceServiceGrpc.getQueryDomainDataSourceMethod) == null) {
          DomainDataSourceServiceGrpc.getQueryDomainDataSourceMethod = getQueryDomainDataSourceMethod =
              io.grpc.MethodDescriptor.<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse>newBuilder()
              .setType(io.grpc.MethodDescriptor.MethodType.UNARY)
              .setFullMethodName(generateFullMethodName(SERVICE_NAME, "QueryDomainDataSource"))
              .setSampledToLocalTracing(true)
              .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest.getDefaultInstance()))
              .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse.getDefaultInstance()))
              .setSchemaDescriptor(new DomainDataSourceServiceMethodDescriptorSupplier("QueryDomainDataSource"))
              .build();
        }
      }
    }
    return getQueryDomainDataSourceMethod;
  }

  private static volatile io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse> getUpdateDomainDataSourceMethod;

  @io.grpc.stub.annotations.RpcMethod(
      fullMethodName = SERVICE_NAME + '/' + "UpdateDomainDataSource",
      requestType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest.class,
      responseType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse.class,
      methodType = io.grpc.MethodDescriptor.MethodType.UNARY)
  public static io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse> getUpdateDomainDataSourceMethod() {
    io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse> getUpdateDomainDataSourceMethod;
    if ((getUpdateDomainDataSourceMethod = DomainDataSourceServiceGrpc.getUpdateDomainDataSourceMethod) == null) {
      synchronized (DomainDataSourceServiceGrpc.class) {
        if ((getUpdateDomainDataSourceMethod = DomainDataSourceServiceGrpc.getUpdateDomainDataSourceMethod) == null) {
          DomainDataSourceServiceGrpc.getUpdateDomainDataSourceMethod = getUpdateDomainDataSourceMethod =
              io.grpc.MethodDescriptor.<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse>newBuilder()
              .setType(io.grpc.MethodDescriptor.MethodType.UNARY)
              .setFullMethodName(generateFullMethodName(SERVICE_NAME, "UpdateDomainDataSource"))
              .setSampledToLocalTracing(true)
              .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest.getDefaultInstance()))
              .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse.getDefaultInstance()))
              .setSchemaDescriptor(new DomainDataSourceServiceMethodDescriptorSupplier("UpdateDomainDataSource"))
              .build();
        }
      }
    }
    return getUpdateDomainDataSourceMethod;
  }

  private static volatile io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse> getDeleteDomainDataSourceMethod;

  @io.grpc.stub.annotations.RpcMethod(
      fullMethodName = SERVICE_NAME + '/' + "DeleteDomainDataSource",
      requestType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest.class,
      responseType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse.class,
      methodType = io.grpc.MethodDescriptor.MethodType.UNARY)
  public static io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse> getDeleteDomainDataSourceMethod() {
    io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse> getDeleteDomainDataSourceMethod;
    if ((getDeleteDomainDataSourceMethod = DomainDataSourceServiceGrpc.getDeleteDomainDataSourceMethod) == null) {
      synchronized (DomainDataSourceServiceGrpc.class) {
        if ((getDeleteDomainDataSourceMethod = DomainDataSourceServiceGrpc.getDeleteDomainDataSourceMethod) == null) {
          DomainDataSourceServiceGrpc.getDeleteDomainDataSourceMethod = getDeleteDomainDataSourceMethod =
              io.grpc.MethodDescriptor.<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse>newBuilder()
              .setType(io.grpc.MethodDescriptor.MethodType.UNARY)
              .setFullMethodName(generateFullMethodName(SERVICE_NAME, "DeleteDomainDataSource"))
              .setSampledToLocalTracing(true)
              .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest.getDefaultInstance()))
              .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse.getDefaultInstance()))
              .setSchemaDescriptor(new DomainDataSourceServiceMethodDescriptorSupplier("DeleteDomainDataSource"))
              .build();
        }
      }
    }
    return getDeleteDomainDataSourceMethod;
  }

  private static volatile io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse> getBatchQueryDomainDataSourceMethod;

  @io.grpc.stub.annotations.RpcMethod(
      fullMethodName = SERVICE_NAME + '/' + "BatchQueryDomainDataSource",
      requestType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest.class,
      responseType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse.class,
      methodType = io.grpc.MethodDescriptor.MethodType.UNARY)
  public static io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse> getBatchQueryDomainDataSourceMethod() {
    io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse> getBatchQueryDomainDataSourceMethod;
    if ((getBatchQueryDomainDataSourceMethod = DomainDataSourceServiceGrpc.getBatchQueryDomainDataSourceMethod) == null) {
      synchronized (DomainDataSourceServiceGrpc.class) {
        if ((getBatchQueryDomainDataSourceMethod = DomainDataSourceServiceGrpc.getBatchQueryDomainDataSourceMethod) == null) {
          DomainDataSourceServiceGrpc.getBatchQueryDomainDataSourceMethod = getBatchQueryDomainDataSourceMethod =
              io.grpc.MethodDescriptor.<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse>newBuilder()
              .setType(io.grpc.MethodDescriptor.MethodType.UNARY)
              .setFullMethodName(generateFullMethodName(SERVICE_NAME, "BatchQueryDomainDataSource"))
              .setSampledToLocalTracing(true)
              .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest.getDefaultInstance()))
              .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse.getDefaultInstance()))
              .setSchemaDescriptor(new DomainDataSourceServiceMethodDescriptorSupplier("BatchQueryDomainDataSource"))
              .build();
        }
      }
    }
    return getBatchQueryDomainDataSourceMethod;
  }

  private static volatile io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse> getListDomainDataSourceMethod;

  @io.grpc.stub.annotations.RpcMethod(
      fullMethodName = SERVICE_NAME + '/' + "ListDomainDataSource",
      requestType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest.class,
      responseType = org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse.class,
      methodType = io.grpc.MethodDescriptor.MethodType.UNARY)
  public static io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest,
      org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse> getListDomainDataSourceMethod() {
    io.grpc.MethodDescriptor<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse> getListDomainDataSourceMethod;
    if ((getListDomainDataSourceMethod = DomainDataSourceServiceGrpc.getListDomainDataSourceMethod) == null) {
      synchronized (DomainDataSourceServiceGrpc.class) {
        if ((getListDomainDataSourceMethod = DomainDataSourceServiceGrpc.getListDomainDataSourceMethod) == null) {
          DomainDataSourceServiceGrpc.getListDomainDataSourceMethod = getListDomainDataSourceMethod =
              io.grpc.MethodDescriptor.<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest, org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse>newBuilder()
              .setType(io.grpc.MethodDescriptor.MethodType.UNARY)
              .setFullMethodName(generateFullMethodName(SERVICE_NAME, "ListDomainDataSource"))
              .setSampledToLocalTracing(true)
              .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest.getDefaultInstance()))
              .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller(
                  org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse.getDefaultInstance()))
              .setSchemaDescriptor(new DomainDataSourceServiceMethodDescriptorSupplier("ListDomainDataSource"))
              .build();
        }
      }
    }
    return getListDomainDataSourceMethod;
  }

  /**
   * Creates a new async stub that supports all call types for the service
   */
  public static DomainDataSourceServiceStub newStub(io.grpc.Channel channel) {
    io.grpc.stub.AbstractStub.StubFactory<DomainDataSourceServiceStub> factory =
      new io.grpc.stub.AbstractStub.StubFactory<DomainDataSourceServiceStub>() {
        @java.lang.Override
        public DomainDataSourceServiceStub newStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
          return new DomainDataSourceServiceStub(channel, callOptions);
        }
      };
    return DomainDataSourceServiceStub.newStub(factory, channel);
  }

  /**
   * Creates a new blocking-style stub that supports unary and streaming output calls on the service
   */
  public static DomainDataSourceServiceBlockingStub newBlockingStub(
      io.grpc.Channel channel) {
    io.grpc.stub.AbstractStub.StubFactory<DomainDataSourceServiceBlockingStub> factory =
      new io.grpc.stub.AbstractStub.StubFactory<DomainDataSourceServiceBlockingStub>() {
        @java.lang.Override
        public DomainDataSourceServiceBlockingStub newStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
          return new DomainDataSourceServiceBlockingStub(channel, callOptions);
        }
      };
    return DomainDataSourceServiceBlockingStub.newStub(factory, channel);
  }

  /**
   * Creates a new ListenableFuture-style stub that supports unary calls on the service
   */
  public static DomainDataSourceServiceFutureStub newFutureStub(
      io.grpc.Channel channel) {
    io.grpc.stub.AbstractStub.StubFactory<DomainDataSourceServiceFutureStub> factory =
      new io.grpc.stub.AbstractStub.StubFactory<DomainDataSourceServiceFutureStub>() {
        @java.lang.Override
        public DomainDataSourceServiceFutureStub newStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
          return new DomainDataSourceServiceFutureStub(channel, callOptions);
        }
      };
    return DomainDataSourceServiceFutureStub.newStub(factory, channel);
  }

  /**
   */
  public interface AsyncService {

    /**
     */
    default void createDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getCreateDomainDataSourceMethod(), responseObserver);
    }

    /**
     */
    default void queryDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getQueryDomainDataSourceMethod(), responseObserver);
    }

    /**
     */
    default void updateDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getUpdateDomainDataSourceMethod(), responseObserver);
    }

    /**
     */
    default void deleteDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getDeleteDomainDataSourceMethod(), responseObserver);
    }

    /**
     */
    default void batchQueryDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getBatchQueryDomainDataSourceMethod(), responseObserver);
    }

    /**
     */
    default void listDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getListDomainDataSourceMethod(), responseObserver);
    }
  }

  /**
   * Base class for the server implementation of the service DomainDataSourceService.
   */
  public static abstract class DomainDataSourceServiceImplBase
      implements io.grpc.BindableService, AsyncService {

    @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() {
      return DomainDataSourceServiceGrpc.bindService(this);
    }
  }

  /**
   * A stub to allow clients to do asynchronous rpc calls to service DomainDataSourceService.
   */
  public static final class DomainDataSourceServiceStub
      extends io.grpc.stub.AbstractAsyncStub<DomainDataSourceServiceStub> {
    private DomainDataSourceServiceStub(
        io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
      super(channel, callOptions);
    }

    @java.lang.Override
    protected DomainDataSourceServiceStub build(
        io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
      return new DomainDataSourceServiceStub(channel, callOptions);
    }

    /**
     */
    public void createDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ClientCalls.asyncUnaryCall(
          getChannel().newCall(getCreateDomainDataSourceMethod(), getCallOptions()), request, responseObserver);
    }

    /**
     */
    public void queryDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ClientCalls.asyncUnaryCall(
          getChannel().newCall(getQueryDomainDataSourceMethod(), getCallOptions()), request, responseObserver);
    }

    /**
     */
    public void updateDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ClientCalls.asyncUnaryCall(
          getChannel().newCall(getUpdateDomainDataSourceMethod(), getCallOptions()), request, responseObserver);
    }

    /**
     */
    public void deleteDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ClientCalls.asyncUnaryCall(
          getChannel().newCall(getDeleteDomainDataSourceMethod(), getCallOptions()), request, responseObserver);
    }

    /**
     */
    public void batchQueryDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ClientCalls.asyncUnaryCall(
          getChannel().newCall(getBatchQueryDomainDataSourceMethod(), getCallOptions()), request, responseObserver);
    }

    /**
     */
    public void listDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest request,
        io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse> responseObserver) {
      io.grpc.stub.ClientCalls.asyncUnaryCall(
          getChannel().newCall(getListDomainDataSourceMethod(), getCallOptions()), request, responseObserver);
    }
  }

  /**
   * A stub to allow clients to do synchronous rpc calls to service DomainDataSourceService.
   */
  public static final class DomainDataSourceServiceBlockingStub
      extends io.grpc.stub.AbstractBlockingStub<DomainDataSourceServiceBlockingStub> {
    private DomainDataSourceServiceBlockingStub(
        io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
      super(channel, callOptions);
    }

    @java.lang.Override
    protected DomainDataSourceServiceBlockingStub build(
        io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
      return new DomainDataSourceServiceBlockingStub(channel, callOptions);
    }

    /**
     */
    public org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse createDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.blockingUnaryCall(
          getChannel(), getCreateDomainDataSourceMethod(), getCallOptions(), request);
    }

    /**
     */
    public org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse queryDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.blockingUnaryCall(
          getChannel(), getQueryDomainDataSourceMethod(), getCallOptions(), request);
    }

    /**
     */
    public org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse updateDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.blockingUnaryCall(
          getChannel(), getUpdateDomainDataSourceMethod(), getCallOptions(), request);
    }

    /**
     */
    public org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse deleteDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.blockingUnaryCall(
          getChannel(), getDeleteDomainDataSourceMethod(), getCallOptions(), request);
    }

    /**
     */
    public org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse batchQueryDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.blockingUnaryCall(
          getChannel(), getBatchQueryDomainDataSourceMethod(), getCallOptions(), request);
    }

    /**
     */
    public org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse listDomainDataSource(org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.blockingUnaryCall(
          getChannel(), getListDomainDataSourceMethod(), getCallOptions(), request);
    }
  }

  /**
   * A stub to allow clients to do ListenableFuture-style rpc calls to service DomainDataSourceService.
   */
  public static final class DomainDataSourceServiceFutureStub
      extends io.grpc.stub.AbstractFutureStub<DomainDataSourceServiceFutureStub> {
    private DomainDataSourceServiceFutureStub(
        io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
      super(channel, callOptions);
    }

    @java.lang.Override
    protected DomainDataSourceServiceFutureStub build(
        io.grpc.Channel channel, io.grpc.CallOptions callOptions) {
      return new DomainDataSourceServiceFutureStub(channel, callOptions);
    }

    /**
     */
    public com.google.common.util.concurrent.ListenableFuture<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse> createDomainDataSource(
        org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.futureUnaryCall(
          getChannel().newCall(getCreateDomainDataSourceMethod(), getCallOptions()), request);
    }

    /**
     */
    public com.google.common.util.concurrent.ListenableFuture<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse> queryDomainDataSource(
        org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.futureUnaryCall(
          getChannel().newCall(getQueryDomainDataSourceMethod(), getCallOptions()), request);
    }

    /**
     */
    public com.google.common.util.concurrent.ListenableFuture<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse> updateDomainDataSource(
        org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.futureUnaryCall(
          getChannel().newCall(getUpdateDomainDataSourceMethod(), getCallOptions()), request);
    }

    /**
     */
    public com.google.common.util.concurrent.ListenableFuture<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse> deleteDomainDataSource(
        org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.futureUnaryCall(
          getChannel().newCall(getDeleteDomainDataSourceMethod(), getCallOptions()), request);
    }

    /**
     */
    public com.google.common.util.concurrent.ListenableFuture<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse> batchQueryDomainDataSource(
        org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.futureUnaryCall(
          getChannel().newCall(getBatchQueryDomainDataSourceMethod(), getCallOptions()), request);
    }

    /**
     */
    public com.google.common.util.concurrent.ListenableFuture<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse> listDomainDataSource(
        org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest request) {
      return io.grpc.stub.ClientCalls.futureUnaryCall(
          getChannel().newCall(getListDomainDataSourceMethod(), getCallOptions()), request);
    }
  }

  private static final int METHODID_CREATE_DOMAIN_DATA_SOURCE = 0;
  private static final int METHODID_QUERY_DOMAIN_DATA_SOURCE = 1;
  private static final int METHODID_UPDATE_DOMAIN_DATA_SOURCE = 2;
  private static final int METHODID_DELETE_DOMAIN_DATA_SOURCE = 3;
  private static final int METHODID_BATCH_QUERY_DOMAIN_DATA_SOURCE = 4;
  private static final int METHODID_LIST_DOMAIN_DATA_SOURCE = 5;

  private static final class MethodHandlers<Req, Resp> implements
      io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>,
      io.grpc.stub.ServerCalls.ServerStreamingMethod<Req, Resp>,
      io.grpc.stub.ServerCalls.ClientStreamingMethod<Req, Resp>,
      io.grpc.stub.ServerCalls.BidiStreamingMethod<Req, Resp> {
    private final AsyncService serviceImpl;
    private final int methodId;

    MethodHandlers(AsyncService serviceImpl, int methodId) {
      this.serviceImpl = serviceImpl;
      this.methodId = methodId;
    }

    @java.lang.Override
    @java.lang.SuppressWarnings("unchecked")
    public void invoke(Req request, io.grpc.stub.StreamObserver<Resp> responseObserver) {
      switch (methodId) {
        case METHODID_CREATE_DOMAIN_DATA_SOURCE:
          serviceImpl.createDomainDataSource((org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest) request,
              (io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse>) responseObserver);
          break;
        case METHODID_QUERY_DOMAIN_DATA_SOURCE:
          serviceImpl.queryDomainDataSource((org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest) request,
              (io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse>) responseObserver);
          break;
        case METHODID_UPDATE_DOMAIN_DATA_SOURCE:
          serviceImpl.updateDomainDataSource((org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest) request,
              (io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse>) responseObserver);
          break;
        case METHODID_DELETE_DOMAIN_DATA_SOURCE:
          serviceImpl.deleteDomainDataSource((org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest) request,
              (io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse>) responseObserver);
          break;
        case METHODID_BATCH_QUERY_DOMAIN_DATA_SOURCE:
          serviceImpl.batchQueryDomainDataSource((org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest) request,
              (io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse>) responseObserver);
          break;
        case METHODID_LIST_DOMAIN_DATA_SOURCE:
          serviceImpl.listDomainDataSource((org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest) request,
              (io.grpc.stub.StreamObserver<org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse>) responseObserver);
          break;
        default:
          throw new AssertionError();
      }
    }

    @java.lang.Override
    @java.lang.SuppressWarnings("unchecked")
    public io.grpc.stub.StreamObserver<Req> invoke(
        io.grpc.stub.StreamObserver<Resp> responseObserver) {
      switch (methodId) {
        default:
          throw new AssertionError();
      }
    }
  }

  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
        .addMethod(
          getCreateDomainDataSourceMethod(),
          io.grpc.stub.ServerCalls.asyncUnaryCall(
            new MethodHandlers<
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest,
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse>(
                service, METHODID_CREATE_DOMAIN_DATA_SOURCE)))
        .addMethod(
          getQueryDomainDataSourceMethod(),
          io.grpc.stub.ServerCalls.asyncUnaryCall(
            new MethodHandlers<
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest,
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse>(
                service, METHODID_QUERY_DOMAIN_DATA_SOURCE)))
        .addMethod(
          getUpdateDomainDataSourceMethod(),
          io.grpc.stub.ServerCalls.asyncUnaryCall(
            new MethodHandlers<
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest,
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse>(
                service, METHODID_UPDATE_DOMAIN_DATA_SOURCE)))
        .addMethod(
          getDeleteDomainDataSourceMethod(),
          io.grpc.stub.ServerCalls.asyncUnaryCall(
            new MethodHandlers<
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest,
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse>(
                service, METHODID_DELETE_DOMAIN_DATA_SOURCE)))
        .addMethod(
          getBatchQueryDomainDataSourceMethod(),
          io.grpc.stub.ServerCalls.asyncUnaryCall(
            new MethodHandlers<
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest,
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse>(
                service, METHODID_BATCH_QUERY_DOMAIN_DATA_SOURCE)))
        .addMethod(
          getListDomainDataSourceMethod(),
          io.grpc.stub.ServerCalls.asyncUnaryCall(
            new MethodHandlers<
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest,
              org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse>(
                service, METHODID_LIST_DOMAIN_DATA_SOURCE)))
        .build();
  }

  private static abstract class DomainDataSourceServiceBaseDescriptorSupplier
      implements io.grpc.protobuf.ProtoFileDescriptorSupplier, io.grpc.protobuf.ProtoServiceDescriptorSupplier {
    DomainDataSourceServiceBaseDescriptorSupplier() {}

    @java.lang.Override
    public com.google.protobuf.Descriptors.FileDescriptor getFileDescriptor() {
      return org.secretflow.v1alpha1.kusciaapi.Domaindatasource.getDescriptor();
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.ServiceDescriptor getServiceDescriptor() {
      return getFileDescriptor().findServiceByName("DomainDataSourceService");
    }
  }

  private static final class DomainDataSourceServiceFileDescriptorSupplier
      extends DomainDataSourceServiceBaseDescriptorSupplier {
    DomainDataSourceServiceFileDescriptorSupplier() {}
  }

  private static final class DomainDataSourceServiceMethodDescriptorSupplier
      extends DomainDataSourceServiceBaseDescriptorSupplier
      implements io.grpc.protobuf.ProtoMethodDescriptorSupplier {
    private final java.lang.String methodName;

    DomainDataSourceServiceMethodDescriptorSupplier(java.lang.String methodName) {
      this.methodName = methodName;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.MethodDescriptor getMethodDescriptor() {
      return getServiceDescriptor().findMethodByName(methodName);
    }
  }

  private static volatile io.grpc.ServiceDescriptor serviceDescriptor;

  public static io.grpc.ServiceDescriptor getServiceDescriptor() {
    io.grpc.ServiceDescriptor result = serviceDescriptor;
    if (result == null) {
      synchronized (DomainDataSourceServiceGrpc.class) {
        result = serviceDescriptor;
        if (result == null) {
          serviceDescriptor = result = io.grpc.ServiceDescriptor.newBuilder(SERVICE_NAME)
              .setSchemaDescriptor(new DomainDataSourceServiceFileDescriptorSupplier())
              .addMethod(getCreateDomainDataSourceMethod())
              .addMethod(getQueryDomainDataSourceMethod())
              .addMethod(getUpdateDomainDataSourceMethod())
              .addMethod(getDeleteDomainDataSourceMethod())
              .addMethod(getBatchQueryDomainDataSourceMethod())
              .addMethod(getListDomainDataSourceMethod())
              .build();
        }
      }
    }
    return result;
  }
}
